﻿using SheepStorage.Domain.Dto.InputDto;
using SheepStorage.Domain.Entity;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SheepStorage.Service.Interface
{
    public interface ISheepWeaningService
    {
        /// <summary>
        /// 种母断奶添加
        /// </summary>
        /// <param name="sheepWean"></param>
        /// <returns></returns>
        Task<int> SheepWeaningAdd(List<SheepMomWeaning> WeanList);

        /// <summary>
        /// 种母断奶列表
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task<List<SheepMomWeaning>> GetSheepWeaning(SheepWeaningInput input);

        /// <summary>
        /// 批量删除/逻辑删除
        /// </summary>
        /// <param name="idList"></param>
        /// <returns></returns>
        Task<int> DeleteSheepWeaning(params int[] idList);


        /// <summary>
        /// 种母断奶单个数据
        /// </summary>
        /// <param name="sheepWeaningId"></param>
        /// <returns></returns>
        Task<SheepMomWeaning> SheepWeaningInfo(int sheepWeaningId);


        /// <summary>
        /// 种母断奶修改
        /// </summary>
        /// <param name="sheepWeaning"></param>
        /// <returns></returns>
        Task<int> UpdateSheepWeaning(SheepMomWeaning sheepWeaning);

        /// <summary>
        /// 审核
        /// </summary>
        /// <param name="SheepWeaning"></param>
        /// <param name="state"></param>
        /// <returns></returns>
        Task<int> UpdateSheepWeaningState(SheepWeaningStateInput input);

    }
}
